#ifndef SERIAL_H
#define SERIAL_H

#include <QMainWindow>
#include "ui_serial.h"
#include <QSerialPort>
#include <QSerialPortInfo>
#include <QString>
#include <QDateTime>
#include <QTimer>
#include <qmath.h>
#include <QDebug>
#include <QChartView>
#include <QSplineSeries>
#include <QValueAxis>
#include <QtCharts>
using namespace QtCharts;


QT_BEGIN_NAMESPACE
namespace Ui { class serial; }
QT_END_NAMESPACE

class serial : public QMainWindow
{
    Q_OBJECT

public:
    serial(QWidget *parent = nullptr);
    ~serial();

private slots:  //自定义槽函数
    //检测通讯端口槽函数
    void btn_serial_check(bool);
    //打开选择端口槽函数
    void btn_open_port(bool);
    //关闭选择端口槽函数
    void btn_close_port(bool);
    //接收数据槽函数
    void receive_data(void);
    //清空接收槽函数
    void btn_clear_rev(bool);

private:
    Ui::serial *ui;
    void ChartInit();  //图表初始化函数
    void system_init();//用户系统初始化
    QSerialPort global_port;//串口全局类声明

    QChart *m_chart ;
    QChartView  *m_chartView;//画布
    QValueAxis *axisX;       //坐标轴
    QValueAxis *axisY;
    QLineSeries *series ;
    QLineSeries *series2 ;
    //QSplineSeries *series ; //平滑曲线的集合
    QTimer *m_timer;
    qint32 points=0;

};
#endif // SERIAL_H
